package io.terminus.lego.shinda.web.controller

import io.swagger.annotations.Api
import io.swagger.annotations.ApiOperation
import io.terminus.lego.shinda.web.context.UserContext
import io.terminus.lego.shinda.web.controller.dto.UserDTO
import io.terminus.lego.shinda.web.controller.dto.UserUpdateDTO
import org.springframework.web.bind.annotation.*

/**
 * 用户信息接口
 * @author wangmeng
 * @date 2018/4/26
 */
@Api("用户信息服务")
@RestController
@RequestMapping("api/user")
class UserController {

    @ApiOperation("获取当前用户信息")
    @GetMapping("/current")
    fun getCurrentUser(): UserDTO {
        return UserContext.getCurrentUser() ?: throw RuntimeException("未获取到当前用户")
    }

    @ApiOperation("更新当前用户信息")
    @PutMapping("/update/info")
    fun updateUserInfo(@RequestBody updateDTO: UserUpdateDTO) {
        TODO("实现")
    }

}